/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package control;

import dao.ImagemDao;
import java.io.IOException;
import java.io.Serializable;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;
import model.Imagem;
import org.primefaces.event.FileUploadEvent;
import org.primefaces.model.DefaultStreamedContent;
import org.primefaces.model.StreamedContent;

/**
 *
 * @author Elizangela
 */
@ManagedBean(name = "imagemBean")
@ViewScoped
public class ImagemBean extends ImovelBean implements Serializable {

    private StreamedContent st;
    private Imagem img = new Imagem();
    private ImagemDao imagemDao;
    
  
    public Imagem getImg(){
        return img;
        
    }

    public void handleFileUpload1(FileUploadEvent event) {
        ArrayList<String> cam = new ArrayList<String>();
        try {
            st = new DefaultStreamedContent(event.getFile().getInputstream());
            byte[] foto = event.getFile().getContents();
            int valor = event.getFile().getFileName().length();//length para evitar problemas com arquivos de nomes iguais
            String nomeArquivo = Integer.toString(valor) + event.getFile().getFileName();
            String arquivo = "C:/xampp/htdocs/ForHent/web/tema/uploads/" + nomeArquivo;
            criaArquivo(foto, arquivo);
            cam.add(nomeArquivo);
            FacesMessage msg = new FacesMessage("Succesful", event.getFile().getFileName() + " is uploaded.");
            FacesContext.getCurrentInstance().addMessage(null, msg);

        } catch (IOException ex) {
            Logger.getLogger(ImovelBean.class.getName()).log(Level.SEVERE, null, ex);
        }
        this.img.setCaminho(cam);
    }

    public String salvarFotos() {
        String resultado = "falha";
        try {
            imagemDao = new ImagemDao();
            boolean retorno = imagemDao.inserir(img);
            if (retorno) {
                resultado = "teste";
            }
            
        } catch (SQLException ex) {
            Logger.getLogger(ImagemBean.class.getName()).log(Level.SEVERE, null, ex);
        }
        return resultado;
    }
    
}
